﻿<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script type="text/javascript" src="../../js/jquery-1.12.4 (1).js" ></script>
<script type="text/javascript">
	$(function(){
		//功能1：实现  全选 全不选 功能（通过点击 全选 按钮）
		$(":button").click(function(){
			var flag=true;
			$(":checkbox").each(function(){
				if(!this.checked){//该开始就时默认所有的选项都选中了，如果检测到默写选项没有被选中，就执行if操作，然后赋值使其执行全选的指令
					
					flag=false;
				}
			});
			if(flag==false){
				$(":checkbox").prop("checked",true);
			}else{
				$(":checkbox").prop("checked",false);
			}
		});
		//功能2：选中h2中的大项，对应后面的小项 全部选中；取消选中，则小项全部取消
		$("h2>input").click(function(){
			if(this.checked){
				$(this).parent().next().children().prop("checked",true);
			}else{
				$(this).parent().next().children().prop("checked",false);
			}
		});
		//功能3：选中小项，则其对应的大项选中，如果小项都未选中，则大项不选。
		$(":checkbox").click(function(){
			//这句代码意思是如果是大项被选中的话，它的下属项为全选
			if(this.checked){
				
				$(this).parent().prev().children().prop("checked",true);
			}else{
				//这个是下属项被选中以后，则大项才能被选中
				var flag=false;
				$(this).parent().children().each(function(){
					if(this.checked){
						flag=true;
					}
				});
				if(flag==false){
					$(this).parent().prev().children().prop("checked",false);
				}
			}
		});
	});
</script>
<title>无标题文档</title>
</head>

<body>
<div id="menu">
 <h2><input type="checkbox" name="role" value="101"/>系统管理</h2>
 <p>
 	<input type="checkbox" name="role" value="101001"/>用户管理
    <input type="checkbox" name="role" value="101002"/>参数管理
    <input type="checkbox" name="role" value="101003"/>权限管理
    <input type="checkbox" name="role" value="101004"/>日常管理
    <input type="checkbox" name="role" value="101005"/>财务管理
 </p>
 <hr/>
 <h2><input type="checkbox" name="role" value="102"/>鲜花订单管理</h2>
 <p>
 	<input type="checkbox" name="role" value="102032"/>增加订单
    <input type="checkbox" name="role" value="102013"/>订单发货
    <input type="checkbox" name="role" value="102015"/>在线结算
    <input type="checkbox" name="role" value="102016"/>原料管理 
 </p>
 <hr/>
 <h2><input type="checkbox" name="role" value="103"/>客户管理</h2>
 <p>
 	<input type="checkbox" name="role" value="103032"/>增加用户
    <input type="checkbox" name="role" value="103032"/>查找用户
    <input type="checkbox" name="role" value="103012"/>用户维护
    <input type="checkbox" name="role" value="103012"/>生日祝贺
    <input type="checkbox" name="role" value="103012"/>删除用户
 </p>
</div>
 <p>
  <input type="button" value="全选"/>
  <input type="submit" value="提交"/>
  <input type="reset" value="重置"/>
 </p>
 <hr/>
 <p>
   1:实现  全选 全不选 功能（通过点击 全选 按钮）<br/>
   2：选中h2中的大项，对应后面的小项 全部选中；取消选中，则小项全部取消；<br/>
   3:选中小项，则其对应的大项选中，如果小项都未选中，则大项不选。<br/>
   4：不能采用固定value 的方式，比如$(":checkbox[value=1001]")这样的格式
 </p>
</body>
</html>
